#ifndef STATE_H
#define STATE_H

#include <iostream>

struct State  
{
	int id;
	int value;

	int p;
	int r;
	int q;

	//Machines *machines;
	State():id(0),value(0),p(0),r(0),q(0){}

	bool operator < (State &v)
	{
		if(this->value == v.value)
			return (this->id > v.id);

		if(this->value < v.value)
		{
			
			return true;
		}
		return false;
	}

	bool operator > (State &v)
	{
		if(this->value == v.value)
			return (this->id < v.id);

		if(this->value > v.value)
			return true;
		return false;
	}

	~State()
	{
	//	if(size>0)
	//		delete [] machines;
	}
};

#endif